package com.aaa.qy127.service;

import com.aaa.qy127.entity.Staff;
import com.aaa.qy127.util.CodeAndMsg;
import com.aaa.qy127.util.Result;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

public interface StaffService {

    /**
     * 通过 StaffId 和 password 获取 staff 的信息
     * @param staffId
     * @param password
     * @return
     */
    CodeAndMsg getCodeAndMsg(String staffId, String password, HttpServletRequest request);

    //String getCodeAndMsg(String staffId,String password);

    /**
     * 查询全部员工的数据 并分页 的业务
     * @param staff
     * @return
     */
    Result selStaff(Staff staff);

    /**
     * 修改 状态的业务
     * @param id
     * @param status
     * @return
     */
    String updStatus(Integer id,Integer status );

    /**
     * 新增 和修改 信息 的业务
     * @param staff
     * @return
     */
    CodeAndMsg updAndInsStaff(Staff staff);

    /**
     * 获得 StaffId 的最大值
     * @return
     */
    int getStaffId();

    /**
     * 修改密码
     * @param staffId
     * @param password
     * @return
     */
    int updatePassword(Integer staffId, String password);
    /**
     * 获取当前登陆人的信息
     * @param request
     * @return
     */
    List<Map<String, Object>> getNowLoginStaffInformation(HttpServletRequest request);

    /**
     * 更新当前登录人的手机号和地址
     * @param staff
     * @param request
     * @return
     */
    int updateStaffPhoneAndAddress(Staff staff,HttpServletRequest request) ;

    /**
     * 根据当前登录人的id更新头像的url
     * @param request
     * @param file
     * @return
     */
    Map imgUpload(HttpServletRequest request, MultipartFile file);

}
